package ExerChapter15Collection_;

import java.util.ArrayList;
import java.util.List;

// 1、封装一个新闻类，包含标题和内容属性，提供get、set方法，重写toString方法，打印对象时只打印标题；
// 2、只提供一个带参数的构造器，实例化对象时，只初始化标题；并且实例化两个对象：
// 新闻一：新冠确诊病例超千万，数百万印度教信徒赴恒河“圣浴”引民众担忧
// 新闻二：男子突然想起2个月前钓的鱼还在网兜里，捞起一看赶紧放生
// 3、将新闻对象添加到ArrayList集合中，并且进行倒序遍历；
// 4、在遍历集合过程中，对新闻标题进行处理，超过15字的只保留前15个，然后在后边加“...”
// 在控制台打印遍历出经过处理的新闻标题；
public class h1 {
    public static void main(String[] args) {
        News new1 = new News("新闻一");
        new1.setText("新冠确诊病例超千万，数百万印度教信徒赴恒河“圣浴”引民众担忧");
        News new2 = new News("新闻二");
        new2.setText("男子突然想起2个月前钓的鱼还在网兜里，捞起一看赶紧放生");
        List<News> list1 = new ArrayList<>();
        list1.add(new1);
        list1.add(new2);
        //倒序遍历；
        for(int i = list1.size()-1;i>=0;i--){
            News temp = new News(null);
            temp = list1.get(i);
            System.out.println(subStringText(temp.getText()));

        }
    }

    public static String subStringText(String text){
        if (text == null) {
            return "";                
        }

        if (text.length() > 15) {
            return text.substring(0,15) + "...";
            
        } else {
            return text;
        }
    }
    
}

class News{
    private String title;
    private String text;
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getText() {
        return text;
    }
    public void setText(String text) {
        this.text = text;
    }
    @Override
    public String toString() {
        return "News [title=" + title + "]";
    }
    public News(String title) {
        this.title = title;
    }

    
    
}
